package com.spsoft.vatoutinv.util.ofd.entity;

import com.spsoft.vatoutinv.util.ofd.entity.base.GoodsInfo;
import com.spsoft.vatoutinv.util.ofd.entity.passenger.PassengerInfo;
import com.spsoft.vatoutinv.util.ofd.entity.passenger.PassengerTransportationInfo;
import com.spsoft.vatoutinv.util.ofd.entity.realestate.RealEstateLeasInfo;
import com.spsoft.vatoutinv.util.ofd.entity.realestate.RealEstateSalesInfo;
import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * 发票信息实体类
 *
 * @author wangy
 */
@Data
public class OriginalInvoice implements Serializable {

    private static final long serialVersionUID = -2019367653331929416L;

    /**
     * 已开发票表主键
     */
    private Long foidid;

    /**
     * 发票类型
     */
    private String invoiceType;

    /**
     * 发票号码
     */
    private String invoiceNo;

    /**
     * 发票机构
     */
    private String deptCode;

    /**
     * 发票日期
     */
    private String issueDate;

    /**
     * 购方名称
     */
    private String buyerName;
    /**
     * 购方税号
     */
    private String buyerTaxID;
    /**
     * 销方名称
     */
    private String sellerName;
    /**
     * 销方税号
     */
    private String sellerTaxID;

    /**
     * 价税合计
     */
    private String taxInclusiveTotalAmount;

    /**
     * 税额
     */
    private String taxTotalAmount;

    /**
     * 不含税金额
     */
    private String taxExclusiveTotalAmount;

    /**
     * 备注
     */
    private String note;

    /**
     * 开票人
     */
    private String invoiceClerk;
    /**
     * 二维码文字信息
     */
    private String graphCode;

    /**
     * 特定要素类型
     */
    private String tdys;

    /**
     * 差额征税
     */
    private String taxationMethod;

    /**
     * 普通发票-明细信息
     */
    private List<GoodsInfo> goodsInfos;

    /**
     * 不动产租赁发票-明细信息
     */
    private List<RealEstateLeasInfo> realEstateLeasInfo;

    /**
     * 不动产销售发票-明细信息
     */
    private List<RealEstateSalesInfo> realEstateSalesInfo;

    /**
     * 旅客信息-明细信息
     */
    private List<PassengerTransportationInfo> passengerTransportations;
    private List<PassengerInfo> passengerInfo;
}